# NOT RUN {
library(Matrix)
# ----- Generate data -----
n <- 200
x <- runif(n, 1, 3)
X <- model.matrix(~ x)
Beta.true <- c(0, 1)
mean.true <- exp(X %*% Beta.true)
kappa.true <- 0.95
Pi.true <- c(1,3)/4
d <- ncol(X)
J <- length(Pi.true)
y <- r.mixlink.pois(n, mean.true, Pi.true, kappa.true)
# ----- Run Metropolis-within-Gibbs sampler -----
hyper <- list(VBeta = diag(1000, d), alpha.Pi = rep(1, J),
kappa.a = 1, kappa.b = 1/2)
proposal <- list(
var = bdiag(solve(t(X) %*% X), diag(J-1), 1),
scale = 0.5)
metrop.out <- rwmetrop.mixlink.poisson(y, X, R = 20000, burn = 1000,
thin = 10, Pi.init = c(1,9)/10, hyper = hyper,
report.period = 1000, use.laplace.approx = TRUE, proposal = proposal)
print(metrop.out)
DIC(metrop.out)
# }
# NOT RUN {
# }
Run the code above in your browser using DataLab